package com.cidp.system.service;

import com.cidp.system.model.Tdepartment;
import com.litt.core.exception.BusiException;
import com.litt.core.page.IPageList;
import com.litt.core.page.PagePoParam;

/**
 * <b>标题：</b>系统部门Service接口.
 * <pre><b>描述</b>
 *    系统部门管理
 * </pre>
 * 
 * @author lijian
 * @since 2008-5-27
 * @version 1.0
 */
public interface IDepartmentService {

	/**
	 * 读取系统部门信息
	 * 
	 * @param id
	 * @return Tdepartment 对象
	 * @throws BusiException 
	 */
	public Tdepartment loadDepartment(Long id) throws BusiException ;

	/**
	 * 删除系统部门信息
	 * 
	 * @param department
	 * @throws BusiException 
	 */
	public void deleteDepartment(Tdepartment department) throws BusiException;
	
	/**
	 * 删除系统部门信息
	 * 
	 * @param id 系统部门Id
	 * @throws BusiException 
	 */
	public void deleteDepartmentById(Long id) throws BusiException;
	
	/**
	 * 更新系统部门信息
	 * 
	 * @param department
	 * @throws BusiException 
	 */
	public void updateDepartment(Tdepartment department) throws BusiException;
	
	/**
	 * 保存系统部门信息
	 * 
	 * @param department
	 * @return Long 主键
	 * @throws BusiException 
	 */
	public Long saveDepartment(Tdepartment department) throws BusiException;
	
	/**
	 * 分页查询系统部门信息.
	 * 
	 * @param pagePoParam 查询参数
	 * @return IPageList IPageList对象
	 * @throws BusiException 
	 */
	public IPageList listByPage(PagePoParam pagePoParam) throws BusiException ;
}
